Optimized cycle length system and method for improving performance of oil wells

ABSTRACT

The invention includes a method of scheduling cyclic steaming of a group of petroleum-containing wells including: inputting to a production-predicting means a group of data describing at least in part the past cyclic steaming and resulting production of a group of petroleum-containing wells; processing the data in the production-predicting means and outputting a group of production predictions for the group of wells during a future steaming cycle; inputting the group of production predictions into an optimization means; inputting an initial steaming Optimal Cycle Length schedule for the group of wells into the optimization means; processing the group of production predictions and the initial steaming cycle schedule in the optimization means by the steps including: determining a ranking for the initial steaming cycle schedule for the group of production predictions against a pre-determined ranking criteria; producing a group of new steaming cycle schedules based on the ranking of the initial steaming cycle a schedule optimization algorithm; determining a ranking for the new steaming cycle schedules against the pre-determined ranking criteria; repeating the production of new steaming cycle schedules and determining ranking steps until some pre-determined termination criteria is met; and outputting a final steaming cycle schedule.

I. COPYRIGHT NOTICE AND AUTHORIZATION

[0001] This patent document contains material which is subject tocopyright protection.

[0002] (C) Copyright 2001 Chevron Research and Technology Company, adivision of Chevron U.S.A. Inc., Inc. All rights reserved.

[0003] With respect to this material which is subject to copyrightprotection. The owner, Chevron Research and Technology Company, adivision of Chevron U.S.A. Inc., has no objection to the facsimilereproduction by any one of the patent disclosure, as it appears in thePatent and Trademark Office patent files or records of any country, butotherwise reserves all rights whatsoever.

II. FIELD OF THE INVENTION

[0004] This invention relates to a system and method of schedulingcyclic steaming of wells.

III. BACKGROUND OF THE INVENTION

[0005] Cyclic Steaming is a method of increasing oil recovery from anoil field where the oil is contained in earth that has low permeability.The low permeability slows or prevents flow of oil thus inhibiting therecovery of oil. Cyclic steaming is a method that greatly increases thepermeability of the earth in such a field and at least temporarilyincreases the oil production from individual wells and the field as awhole. Generally any given well in such an area must be repeatedlysteamed as production decreases over time. Typically after a particularsteam event a well produces at a high rate for some period of time, butthe rate decreases over time until it is no longer producing efficientlyand needs to be re-steamed. The rate of decline in production by a givenwell can vary quite significantly. Also the amount of production to beexpected from wells within a particular field can vary radically. It isgenerally desired to maximize the amount of oil produced in a particularfield over time given a finite amount of steam available. Thus given thevariability of potential production of individual wells within a fieldit is important to choose carefully which wells to steam and when tosteam them in order to maximize oil produced by the field.

[0006] A Patent that describes the Cyclic Steaming process is U.S. Pat.No. 5,085,276 which is herein incorporated by reference in its entirety.Cyclic steaming can be accomplished as follows: The method generallyinvolves the drilling of a wellbore which traverses the low permeabilityformation. First, a lower interval within the low permeability formationis selected and perforated. Tubing is run into the wellbore, and athermal packer is set at the upper boundary of the low permeabilityformation to be produced. Steam is injected into the wellbore throughthe tubing at sufficient pressure and flow rate to cause the lowpermeability formation at the first selected lower interval to acceptfluid in the case of naturally fractured low permeability formations, orto fracture in other formations such as diatomite. The steam injectionis continued until a predetermined quantity of steam has been injected.Following a relatively short “soak” period, the well is allowed toproduce back from the first set of perforations. Short steam cyclesalternating with production are repeated for the first interval in thewellbore. Next, sand or sand in combination with other materialimpervious to steam such as cement, or a mechanical isolation device, isplaced into the wellbore sufficient to prevent steam from entering theformation through the first set of perforations. A second interval inthe low permeability formation is then selected and perforated. Steam isonce again flowed from the surface down the wellbore and may enter theformation only through the new second set of perforations due to theimpervious sand or other blocking means in the wellbore. After apredetermined amount of steam is flowed into the formation to causecontrolled fracturing from the second set of perforations, the steamflow is ceased and after another short soak period of about five days,the well is allowed to produce from the second interval. Again,alternating steam and production cycles of short duration without asignificant period in between due to well pump pulling is accomplished.The sequence of perforating, steam fracturing, and cycle steaming andproducing the new fractures, followed by sanding back or otherwiseisolating, and repeating at an upper interval is repeated until adesired amount of the low permeability formation has been fractured andcompleted by the controlled technique of the present invention.

[0007] When the final set of perforations has been completed, steamedand produced for several cycles, the sand, isolating device or othersteam impervious material is circulated out, or drilled through, so asto open all the perforations and place the fractured intervals in fluidcommunication with the wellbore. Steam from a surface steam generatormay then be flowed down the tubing and into the entire set of previouslyisolated perforations, and after a short cycle of steam followed by asoak period, the well is returned to the production mode. Alternatively,any single or set of fractured intervals may be isolated and selectivelyre-steamed.

[0008] As mentioned above it is desired to maximize the amount of oilproduced using Cyclic Steaming, or minimize steam usage or total cost oroptimize some other criteria, in a particular field over time given afinite amount of steam available. The method of the present inventionprovides a means for producing an optimized steaming schedule in orderto optimize for selected optimization criteria.

IV. SUMMARY OF THE INVENTION

[0009] The invention includes a method of scheduling cyclic steaming ofa group of petroleum-containing wells including: inputting to aproduction-predicting means a group of data describing at least in partthe past cyclic steaming and resulting production of a group ofpetroleum-containing wells; processing the data in theproduction-predicting means and outputting a group of productionpredictions for the group of wells during a future steaming cycle;inputting the group of production predictions into an optimizationmeans; inputting an initial steaming cycle schedule, optional from anOptimum Cycle Length Scheduling means, for the group of wells into theoptimization means; processing the group of production predictions andthe initial steaming cycle schedule in the optimization means by thesteps including: determining a ranking for the initial steaming cycleschedule for the group of production predictions against apre-determined ranking criteria; producing a group of new steaming cycleschedules based on the ranking of the initial steaming cycle a scheduleoptimization algorithm; determining a ranking for the new steaming cycleschedules against the pre-determined ranking criteria; repeating theproduction of new steaming cycle schedules and determining ranking stepsuntil some pre-determined termination criteria is met; and outputting afinal steaming cycle schedule.

[0010] Another embodiment includes a method of scheduling cyclicsteaming of a plurality of petroleum-containing wells including:inputting to a production-predicting means a plurality of datadescribing at least in part the past cyclic steaming and resultingproduction of a plurality of petroleum-containing wells; processing thedata in the production-predicting means and outputting a plurality ofproduction predictions for the plurality of wells during a futuresteaming cycle; inputting the plurality of production predictions intoan Optimal Cycle Length Scheduling means configured to produce asteaming cycle schedule; and outputting the steaming cycle schedule.

[0011] In other embodiments the invention includes systems configuredand adapted to perform the steps listed in the above-described methods,and computer readable media containing computer readable instructionsconfigured and adapted to perform the steps listed in theabove-described methods.

[0012] One system embodiment of the invention includes a system forscheduling cyclic steaming of a group of petroleum-containing wellsincluding: a production-predicting means configured for receiving aninput of a group of data describing at least in part the past cyclicsteaming and resulting production of a group of petroleum-containingwells, and for processing the data outputting a group of productionpredictions for the group of wells during a future steaming cycle; anoptimization means configured for receiving as input the output of theproduction-predicting means and for receiving as input steaming cycleschedules for the group of wells, and for processing the group ofproduction predictions and the steaming cycle schedules by the stepsincluding: determining a ranking for the initial steaming cycle schedulefor the group of production predictions against a pre-determined rankingcriteria; producing a group of new steaming cycle schedules based on theranking of the initial steaming cycle a schedule optimization algorithm;determining a ranking for the new steaming cycle schedules against thepre-determined ranking criteria; repeating the production of newsteaming cycle schedules and determining ranking steps until somepre-determined termination criteria is met; and outputting a finalsteaming cycle schedule.

[0013] These and other features and advantages of the present inventionwill be made more apparent through a consideration of the followingdetailed description of a preferred embodiment of the invention. In thecourse of this description, frequent reference will be made to theattached drawings.

V. BRIEF DESCRIPTION OF THE DRAWINGS

[0014]FIG. 1 is a schematic diagram combining aspects of a conceptualdata model/entity-relationship diagram showing the environment of theinvention and its relationship to other systems.

[0015]FIG. 2 is a schematic block system level 0 flow chartdiagram/system diagram of one embodiment of the invention.

[0016]FIGS. 3A and 3B, respectively, depict an embodiment of aconceptual view of a schedule output, and one graphical Gantt Chartview, by the process of the invention and/or the information stored inthe schedule database.

[0017]FIG. 4A is a schematic level 1 data flow diagram (a firstdecomposition of the system diagram in FIG. 2) and shows logical dataflow between major processes of one embodiment of the invention.

[0018]FIG. 4B is a schematic level 1 data flow diagram and shows logicaldata flow between major processes of another embodiment of the inventionwhere Optimal Cycle Length is the only scheduling means.

[0019]FIG. 5 depicts in one detailed embodiment of a conceptual view ofwell-production-prediction data used in testing new schedules formeeting selected objectives in accordance with the invention.

[0020]FIG. 6 depicts an exemplary embodiment in graphical format of pastwell-production data input to the well-production-prediction means.

[0021]FIGS. 7A and 7B depict, respectively, one embodiment ofpre-selected processing parameters used in the invention embodimentemploying a genetic algorithm, and constraints selected, as part of theschedule optimization processing.

[0022]FIG. 8 depicts one embodiment of a graphical display ofchange-of-oil production as a function of genetic algorithm generations,for use in the termination-criteria element of the invention.

VI. DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

[0023] The major components (also interchangeably called aspects,subsystems, modules, functions, services) of the system and method ofthe invention, and examples of advantages they provide, are describedbelow with reference to the figures. For figures including process/meansblocks, each block, separately or in combination, is alternativelycomputer implemented, computer assisted, and/or human implemented.Computer implementation optionally includes one or more conventionalgeneral purpose computers having a processor, memory, storage, inputdevices, output devices and/or conventional networking devices,protocols, and/or conventional client-server hardware and software.Where any block or combination of blocks is computer implemented, it isdone optionally by conventional means, whereby one skilled in the art ofcomputer implementation could utilize conventional algorithms,components, and devices to implement the requirements and design of theinvention provided herein. However, the invention also includes any new,unconventional implementation means.

[0024]FIG. 1 is a schematic diagram combining aspects of a conceptualdata model/entity-relationship diagram showing the environment of theinvention and its relationship to other systems. Petroleum-well field110 includes several wells 120, at typically one oil plant 125 and onesteam plant 115. During the steaming phase of a cyclic steaming process,steam plant 115 passes steam to one or more of wells 120. During theproduction stage of a cyclic steaming process, one or more of wells 120pass petroleum such as oil and gas as well as any steam and water in thewell to oil plant 125. There the recovered material is treated, e.g., toremove water and separate oil from gas.

[0025] When applying the method and system of the invention, the timingof the phases of the cyclic steaming process substantially occur inaccordance with the schedule produced by Schedule Optimization System105. Historical information from petroleum-well field 110 such asdetails of prior cyclic steaming runs, including water and steam usage,cost, and petroleum production, are input to Schedule optimizationSystem 105. Schedule Optimization System 105 utilizes this informationoptionally in conjunction with other information in certain algorithmsto produce a new cyclic steaming process schedule optimized for meetingpre-determined optimization criteria. Further details of this processare described below.

[0026] When applying the method/system of the invention in commercialuse, linkage between the Schedule Optimization System 105 andpetroleum-well field 110 is optionally electronic, manual, or otherknown linkage means. That is, input of data from petroleum-well field110 to Schedule Optimization System 105 may be manual or it may betransferred via data collection or storage systems installed in thepetroleum-well field 1 10. Such systems could include electronic orphysical measurement devices, gauges, databases, and related equipmentknown in the art.

[0027] Similarly, application to the petroleum-well field 110 of theschedule output from the Schedule Optimization System 105 may be manual,automated, or mixtures thereof. That is, in an automated application,the output schedule could be electronically transferred or read by acontroller system which sends appropriate signals to subsystems forcontrolling the valves and other equipment used to time the differentphases of the cyclic steaming process. In a manual application, a humanoperator reads a paper or electronic version of the schedule output andmanually adjusts the necessary valves and other equipment at the propertimes to carry out the schedule.

[0028]FIG. 2 is a schematic block system level 0 flow chartdiagram/system diagram of one embodiment of the invention. ScheduleOptimization System 205 includes Scheduling Process 215, Output Schedule250, datastore 220 which includes Well Data base 225, Steam PlantDatabase 230, and Schedule Database 235. Datastore 220 is optionallyexternal to, and not a component of, Schedule Optimization System 205.The databases may be designed in a variety of ways known to thoseskilled in the database arts. For example, there may be separate or asingle database for each data type. The databases may be special purposedatabases solely for use by the Schedule Optimization System 205 or theymay be pre-existing databases also accessed by, or part of, otherapplications or systems.

[0029] Additional databases (not shown) are also accessed by, orinternal to, the Scheduling Process 215. These optionally include adatabase for output of a reservoir simulator which models the effects onoil production of several parameters of multiple petroleum-containingwells. The simulator typically is theoretically-based and the parametersmay include steam quality and quantity. Another database (not shown) isa database of output from a steam cycle simulator which uses past oilproduction curves and steam cycle data or curve-fitted data to predict afuture oil production curve.

[0030] Schedule Database 235 includes historical information of priorcyclic steaming cycles and resulting production, cost, or otherinformation of interest resulting from implementing the various priorrun steaming cycles. The Steam Database 230 includes prior steamproduction and usage rates for past run schedules and for differentwells. Well Database 225 includes data representing oil production andother information of interest, typically as function of days of steamingrun, for past steaming cycles.

[0031] Updated information from each Database is passed to SchedulingProcess 215. A final Schedule 240 is the output of Scheduling Process215. FIG. 3A depicts one embodiment a conceptual view 310 of a finalSchedule 240. FIG. 3B is a Gantt chart view. Final Schedule 240 ispassed to Schedule Database 235 for updating the database, andoptionally to an Implementation System 210 for application. In thisoptional embodiment, the final Schedule 240 is implemented,electronically or manually or by combined means, in ImplementingSchedule Process 245. Data collected 250 from running final Schedule 240is passed to the respective databases 225 and 230 for updating thosedatabases. Greater details of Scheduling Process 215 are given in FIG. 4below.

[0032]FIG. 4A is a schematic level 1 data flow diagram (a firstdecomposition of the system diagram in FIG. 2) and shows logical dataflow between major processes of one embodiment of the invention. Data asneeded from all Databases 410 (collectively shown as a single databasefor simplification) is read in Read Data Process 415 which is optionallyinternal or external to Scheduling Process 405. All or a portion of theread data is passed to Predict Production or Other Performance Criteriaof Next Steaming Process 420 (“Prediction Process 420”). In oneembodiment of this process, oil production curve-fitted data is inputfrom past steaming cycles, the process applies a predictive algorithmsuch as regression analysis, and outputs a predicted oil productioncurve for a future steaming cycle. Alternative output could includepredicted cost or steam usage curves.

[0033] The output from Prediction Process 420, and any other needed datafrom Read Data Process 415, passes to Inut Initial/subsequent Schedulesand run Fitness Function/Simulator to Rank Schedules Process 425(“Fitness Function Process 420”). This process, in one embodiment is asimulation algorithm for simulating one or more proposed steam cycles inlight of the output, e.g., oil production curves, from PredictionProcess 420. Such an algorithm typically steps through each phase of thesteaming cycle in the schedule being simulated, and accesses thepredicted oil production curves as needed to predict the performancecriteria of interest, in this case, total oil production over the courseof the tested schedule. The initial seed schedule, in one embodiment ofthe invention, is determined using an Optimal Cycle Length determinationprocess 422 (“OCL”). This is an intermediate step between PredictionProcess 420 and Rank Schedules Process 425. OCL is discussed later inthis disclosure in the discussion of FIG. 4B.

[0034] Typically, several schedules are tested and then ranked based onthe selected performance criteria. For example, a portion of scheduleshaving the highest oil production are selected to survive and theremaining tested schedules are discarded. The surviving schedules fromFitness Function Process 420 are passed to Make New Schedules Process430. In this process one or more optimization algorithms utilize thesurviving schedules to make new schedules for testing. The output ofseveral proposed schedules are passed to decision module 435 to verifyof certain pre-determined constraints are met. Such constraints include,e.g., total steam usage in a proposed steaming cycle not exceed totalavailable steam from the steam plant. A sample constraint sheet is shownin FIG. 7B.

[0035] There are various methods of handling proposed schedules whichfail the constraints. Failing schedules may be passed to Discard orApply Penalty Process 440 (“Penalty Process 440”). There the failingschedule is discarded or a penalty is added such that it is effectivelydiscarded in that it will not survive the next testing in the FitnessFunction Process 425. If the penalty method is applied to the failedschedules, then the failed schedules and other schedules are passed backto Fitness Function 425. This loop continues until pre-determinedtermination criteria are met. This is tested in Termination Criteria MetProcess 445. In this process, e.g., the percent increase in oilproduction over prior schedules is determined and if it falls below apre-set amount, the schedule passing the pre-determined terminationcriteria is the final Schedule output 450. The final Schedule 450 isstored in Schedule Database 455.

[0036] Various optimization algorithms known in the art may be utilizedin the Make New Schedules Process 430. These include genetic algorithms.Genetic algorithms attempt to simulate natural selection by selected themost fit schedules from which to produce new schedules (offspring).Typically several generations of schedules may be produced before onemeets the termination criteria. Genetic algorithms are described in U.S.Pat. No. 6,182,057 entitled Device, Method, And Program Storage MediumFor Executing Genetic Algorithm, and U.S. Pat. No. 5,924,048 entitledAutomated Material Balance System For Hydrocarbon Reservoirs Using aGenetic Procedure, which are each incorporated herein by reference intheir entirety. Non-patent information includes, e.g., Introduction toGenetic Algorithms, (seehttp://lancet.mit.edu/˜mbwall/presentations/IntroToGAs/). Geneticalgorithm software source code is available free over the Internet andavailable commercially. Commercially available genetic algorithmprograms include Gene Hunter TM from Ward Systems Group Inc. (seehttp://wardsystems.com) and Evolver from Palisade Corp. (seehftp://www.palisade.com/html/evolver.html) Other potential knownalgorithms for use in the Make New Schedules Process 430 includesimulated annealing, mixed integer nonlinear programming hill climbing,and combinations thereof.

[0037]FIG. 4B is an alternate schematic level 1 data flow diagram andshows logical data flow between major processes of another embodiment ofthe invention. The difference between this embodiment and that of FIG.4A is that OCL Schedule Determination process 422 replaces RankSchedules process 425, Termination Criteria met step 445, Make NewSchedule step 430, Constraints Met step 435, and Discard/Penalty step440.

[0038] The OCL Schedule Determination process 422 includes, but is notlimited to, the following steps and all equivalent variations thereof:

[0039] The mathematical definition is:${Vary}\quad t_{prod}\quad {to}\quad {maximize}\frac{f(t)}{t_{stm} + t_{soak} + t_{prod}}$

[0040] where:

[0041] t_(stm)=steaming time

[0042] t_(soak)=soak time

[0043] t_(prod)=production time

[0044] f(t)=an objective function, for example∫₀^(t_(prod))(Production  Curve)  t

[0045] OCL=t_(stm)+t_(soak)+t_(prod)

[0046] The initial state of each well and how long it has been in thatstate must be known in order to start the OCL scheduling algorithm. Thealgorithm proceeds as follows:

[0047] (1) Start with day 1.

[0048] (2) Change the status of all wells that are through steaming tosoaking. Change the status of all wells that are through soaking toproducing.

[0049] (3) For each well that is producing, calculate the deviation fromOCL, i.e. OCL—current cycle length.

[0050] (4) Sort this list in ascending order.

[0051] (5) Work your way down this list until one of the followingoccurs: (a) You hit a constraint (such as steam availability) or (b) Yourun out of wells which are past their OCL, i.e. their deviation from OCLis negative.

[0052] (6) Move to the next day.

[0053] (7) If the schedule horizon has not yet been reached, return tostep 2.

[0054]FIG. 5 depicts in one detailed embodiment of a conceptual view ofwell-production-prediction data used in testing new schedules formeeting selected objectives in accordance with the invention. FIG. 6depicts an exemplary embodiment in graphical format of curve-fittedgraphs of past well-production data input to thewell-production-prediction means.

[0055]FIGS. 7A and 7B depict, respectively, one embodiment ofpre-selected processing parameters used in the invention embodimentemploying a genetic algorithm, and constraints selected, as part of theschedule optimization processing. FIG. 8 depicts one embodiment of agraphical display of change-of-oil production as a function of geneticalgorithm generations, for use in the termination-criteria element ofthe invention. Various other termination-criteria may be used.

What is claimed is:
 1. A method of scheduling cyclic steaming of aplurality of petroleum-containing wells comprising: (a) inputting to aproduction-predicting means a plurality of data describing at least inpart the past cyclic steaming and resulting production of a plurality ofpetroleum-containing wells; (b) processing said data in saidproduction-predicting means and outputting a plurality of productionpredictions for said plurality of wells during a future steaming cycle;(c) inputting said plurality of production predictions into an OptimalCycle Length scheduling means, thereby producing an initial steamingcycle schedule; (d) inputting said plurality of production predictionsand said initial steaming cycle schedule for said plurality of wellsinto said optimization means; (e) processing said plurality ofproduction predictions and said initial steaming cycle schedule in saidoptimization means by the steps comprising: (1) determining a rankingfor said initial steaming cycle schedule for said plurality ofproduction predictions against pre- determined ranking criteria; (2)producing in a schedule optimization algorithm a plurality of newsteaming cycle schedules based on said ranking of said initial steamingcycle; (3) determining a ranking for said new steaming cycle schedulesagainst said pre-determined ranking criteria; (4) repeating saidproduction of new steaming cycle schedules and determining ranking stepsuntil some pre-determined termination criteria are met; and (5)outputting a final steaming cycle schedule.
 2. The method of claim 1,wherein said schedule optimization algorithm is a genetic algorithm. 3.The method of claim 1, wherein said pre-determined ranking criteria areselected from the group consisting of total production, total steamusage, total water production, total cost, total energy efficiency, andmixtures thereof.
 4. The method of claim 1, wherein said pre-determinedtermination criteria are selected from the group consisting of totaliterations, percent change in said ranking criteria, and mixturesthereof.
 5. The method of claim 2, wherein said genetic algorithmreceives as input a plurality of chromosomes consisting of cyclicsteaming schedules and the ranking criteria for each, mixes portions oftwo or more of each of said schedules to produce new schedules.
 6. Themethod of claim 5, further comprising randomly modifying at least aportion of said new schedules, thereby resulting in modified newschedules which are not direct combinations of portions of the inputschedules.
 7. The method claim 1, wherein said inputting step (a)further comprises inputting to said production-scheduling means theoutput of a reservoir simulation means which models past steaming cyclesof a plurality of petroleum-containing wells.
 8. A method of schedulingcyclic steaming of a plurality of petroleum-containing wells comprising:(a) inputting to a production-predicting means a plurality of datadescribing at least in part the past cyclic steaming and resultingproduction of a plurality of petroleum-containing wells; (b) processingsaid data in said production-predicting means and outputting a pluralityof production predictions for said plurality of wells during a futuresteaming cycle; and (c) inputting said plurality of productionpredictions into an Optimal Cycle Length scheduling means, therebyproducing a steaming cycle schedule.
 9. A system for scheduling cyclicsteaming of a plurality of petroleum-containing wells comprising: (a) aproduction-predicting means configured for receiving an input of aplurality of data describing at least in part the past cyclic steamingand resulting production of a plurality of petroleum-containing wells,and for processing said data outputting a plurality of productionpredictions for said plurality of wells during a future steaming cycle;(b) an optimization means configured for receiving as input said outputof said production-predicting means, and configured for determining anOptimal Cycle Length initial steaming schedule, and configured forreceiving as input said initial steaming cycle schedule and othersteaming cycle schedules for said plurality of wells, and for processingsaid plurality of production predictions and said steaming cycleschedules by the steps comprising: (1) determining a ranking for saidinitial steaming cycle schedule for said plurality of productionpredictions against a pre-determined ranking criteria; (2) producing ina schedule optimization algorithm a plurality of new steaming cycleschedules based on said ranking of said initial steaming cycle aschedule optimization algorithm; (3) determining a ranking for said newsteaming cycle schedules against said pre-determined ranking criteria;(4) repeating said production of new steaming cycle schedules anddetermining ranking steps until some pre-determined termination criteriais met; and (5) outputting a final steaming cycle schedule.
 10. Thesystem of claim 9, wherein said schedule optimization algorithm is agenetic algorithm.
 11. The system of claim 9, wherein saidpre-determined ranking criteria are selected from the group consistingof total production, total steam usage, total water production, totalcost, total energy efficiency, and mixtures thereof.
 12. The system ofclaim 9, wherein said pre-determined termination criteria are selectedfrom the group consisting of total iterations, percent change in saidranking criteria, and mixtures thereof.
 13. The system of claim 10,wherein said genetic algorithm receives as input a plurality ofchromosomes consisting of cyclic steaming schedules and the rankingcriteria for each, mixes portions of two or more of each of saidschedules to produce new schedules.
 14. The system of claim 13, whereinsaid genetic algorithm is further configured to randomly modify at leasta portion of said new schedules, thereby resulting in modified newschedules which are not direct combinations of portions of the inputschedules.
 15. The system claim 9, wherein said production-predictingmeans is further configured for receiving as input to saidproduction-scheduling means the output of a reservoir simulation meanswhich models past steaming cycles of a plurality of petroleum-containingwells.
 16. A system for scheduling cyclic steaming of a plurality ofpetroleum-containing wells comprising: (a) a production-predicting meansconfigured for receiving an input of a plurality of data describing atleast in part the past cyclic steaming and resulting production of aplurality of petroleum-containing wells, and for processing said dataoutputting a plurality of production predictions for said plurality ofwells during a future steaming cycle; and (b) an scheduling meansconfigured for receiving as input said output of saidproduction-predicting means, and configured for determining an OptimalCycle Length steaming schedule for said plurality of wells.
 17. A methodof scheduling cyclic steaming of a plurality of petroleum-containingwells comprising: (a) inputting to a production-predicting means aplurality of data describing at least in part the past cyclic steamingand resulting production of a plurality of petroleum-containing wells;(b) processing said data in said production-predicting means andoutputting a plurality of production predictions for said plurality ofwells during a future steaming cycle; (c) inputting said plurality ofproduction predictions into an Optimal Cycle Length Scheduling meansconfigured to produce an initial steaming cycle schedule; (d) inputtingsaid plurality of production predictions and said initial steaming cycleschedule for said plurality of wells into said optimization means; (e)processing said plurality of production predictions and said initialsteaming cycle schedule in said optimization means by the stepscomprising: (1) determining a ranking for said initial steaming cycleschedule for said plurality of production predictions againstpre-determined ranking criteria; (2) producing with a genetic algorithma plurality of new steaming cycle schedules based on said ranking ofsaid initial steaming cycle; (3) determining a ranking for said newsteaming cycle schedules against said pre-determined ranking criteria;(4) repeating said production of new steaming cycle schedules anddetermining ranking steps until some pre-determined termination criteriaare met; and (5) outputting a final steaming cycle schedule.
 18. Themethod of claim 17, wherein said pre-determined ranking criteria areselected from the group consisting of total production, total steamusage, total water production, total cost, total energy efficiency, andmixtures thereof.
 19. The method of claim 17, wherein saidpre-determined termination criteria are selected from the groupconsisting of total iterations, percent change in said ranking criteria,and mixtures thereof.
 20. The method of claim 18, wherein said geneticalgorithm receives as input a plurality of chromosomes consisting ofcyclic steaming schedules and the ranking criteria for each, mixesportions of two or more of each of said schedules to produce newschedules.
 21. The method of claim 20, further comprising randomlymodifying at least a portion of said new schedules, thereby resulting inmodified new schedules which are not direct combinations of portions ofthe input schedules.
 22. The method claim 17, wherein said inputtingstep (a) further comprises inputting to said production-scheduling meansthe output of a reservoir simulation means which models past steamingcycles of a plurality of petroleum-containing wells.
 23. A method ofscheduling cyclic steaming of a plurality of petroleum-containing wellscomprising: (a) inputting to a production-predicting means a pluralityof data describing at least in part the past cyclic steaming andresulting production of a plurality of petroleum-containing wells; (b)processing said data in said production-predicting means and outputtinga plurality of production predictions for said plurality of wells duringa future steaming cycle; (c) inputting said plurality of productionpredictions into an Optimal Cycle Length Scheduling means configured toproduce a steaming cycle schedule; and (d) outputting said steamingcycle schedule.